package cn.tedu.crm.orders.service;

import cn.tedu.crm.deposit.pojo.vo.OrdersDepositVO;
import cn.tedu.crm.deposit.pojo.vo.ProjectVO;
import cn.tedu.crm.orders.pojo.dto.*;
import cn.tedu.crm.orders.pojo.vo.OrderDetailVO;
import cn.tedu.crm.orders.pojo.vo.OrdersImgVO;
import cn.tedu.crm.orders.pojo.vo.OrdersVO;

import java.util.Date;
import java.util.List;
import java.util.Map;

public interface OrdersService {
    List<OrdersVO> load(OrdersQuery ordersQuery);

    Map<String, List<OrdersImgVO>> loadImg(Long id);

    void add(OrdersAddParam ordersAddParam);

    void imgAdd(String url, Long id,String type);

    OrdersDepositVO selectOrdersById(Long id);


    Long loadByStaffId(Long staffId, Date createTime, Date assess);

    void delete(Long id);

    void addScheme(OrdersSchemeParam ordersSchemeParam);

    void refundAdd(String url, Long id);

    void refundInsert(OrdersRefundParam ordersRefundParam);

    OrderDetailVO details(Long id);

    Long getUserId(Long id);

    void imgDel(Map<String, List<OrdersImgVO>> mapImg);

    ProjectVO selectPeojectById(Long id);

    void dieOrder(DieOrderParam param);

}
